Registros de presencia

Row

Cantidad total de registros de presencia

20929

Cantidad total de géneros

178

Cantidad total de especies

1418

Row

Tabla de registros de presencia

Gráfico pastel

---
title: "Proyecto_02_Visualizacion_de_Orquideas. Sara Alvarado Siles"
output: 
  flexdashboard::flex_dashboard:
    orientation: rows
    source_code: embed
---

```{r carga-paquetes, message=FALSE, warning=FALSE}
# Carga de paquetes
library(sf)
library(DT)
library(dplyr)
library(leafem) 
library(raster)
library(plotly)
library(leaflet)
library(rmapshaper)
library(flexdashboard)
library(leaflet.extras)
```

```{r organizacion}
#-------------------- Colores ---------------------
colores_orquiedas <- "violet"
colores_especies <-"blue"
colores_generos <-"red"

colores_grafico_pastel <- c('rgb(211,94,96)', 'rgb(128,133,133)', 'rgb(144,103,167)', 'rgb(171,104,87)')

#--------------------- Íconos ---------------------
icono_orquideas <-"fab fa-pagelines"
icono_generos <-"fas fa-seedling"
icono_especies <-"fas fa-leaf"
```

```{r carga_datos, message=FALSE, warning=FALSE}
# Carga de la capa de orquídeas (familia Orchidaceae)
orquideas <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/gbif/orchidaceae-cr-registros.csv",
    options = c(
      "X_POSSIBLE_NAMES=decimalLongitude",
      "Y_POSSIBLE_NAMES=decimalLatitude"
    ),
    quiet = TRUE
  )

# Asignación del sistema de coordenadas
st_crs(orquideas) <- 4326


# Carga de la capa de cantones
cantones <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/ign/delimitacion-territorial-administrativa/cr_cantones_simp_wgs84.geojson",
    quiet = TRUE
  )

# Carga de la capa de provincias
provincias <-
  st_read(
    "https://raw.githubusercontent.com/gf0604-procesamientodatosgeograficos/2021i-datos/main/ign/delimitacion-territorial-administrativa/cr_provincias_simp_wgs84.geojson",
    quiet = TRUE
  )
```

```{r limpieza, message=FALSE, warning=FALSE}
# Cruce espacial con la tabla de provincias y cantones
orquideas <- 
  orquideas %>%
  st_join(cantones["provincia"]) %>%
  st_join(cantones["canton"])


# Descartar registros con alta incertidumbre 
orquideas <- 
  orquideas %>%
  filter(coordinateUncertaintyInMeters <= 1000) %>%
  mutate(eventDate = as.Date(eventDate, "%Y-%m-%d"))
```

```{r prueba3}
# Eliminar vacios y NA
orquideas <-
  orquideas %>%
  filter(!is.na(species) & species != "") 
```

```{r grupo_especies, message=FALSE, warning=FALSE}
#crear grupo de especies 
orquideas_especies <- 
  orquideas %>% 
  group_by(species) %>% 
  summarize(n_especies = n())
```

```{r grupo_generos, message=FALSE, warning=FALSE}
# crear grupo de generos 
orquideas_generos <- 
  orquideas %>% 
  group_by(genus) %>% 
  summarize(n_generos = n())
```

```{r capa_alt}
# Obtención de la capa de altitud
alt <- getData(
  "worldclim",
  var = "alt",
  res = .5,
  lon = -84,
  lat = 10
)

# Capa de altitud recortada para los límites exactos de Costa Rica
altitud <-
  alt %>%
  crop(cantones) %>%
  mask(cantones)

 # Paleta de colores
pal <- colorNumeric(
  c("#006400", "#FFFF00", "chocolate1", "#FF0000"), 
  values(altitud), 
  na.color = "transparent"
)

```


```{r orquideas_mayores}
# crear un data frame sobre las orquideas con mayores registros 
orquideas_mayores <-
  orquideas_especies %>%
  st_drop_geometry() %>%
  filter(
    species == "Epidendrum radicans" |
      species == "Epidendrum exasperatum" |
      species == "Elleanthus tonduzii" |
      species == "Elleanthus hymenophorus" |
      species == "Pleurothallis ruscifolia" |
      species == "Maxillaria dendrobioides" |
      species == "Elleanthus glaucophyllus" |
      species == "Habenaria monorrhiza" |
      species == "Epidendrum anoglossum" |
      species == "Epidendrum centropetalum"
  )%>%
  arrange(desc(n_especies))

```

```{r orquiedas_menores}
# crear un data frame sobre las orquideas con menos registros
orquideas_menores <-
  orquideas_especies %>%
  st_drop_geometry() %>%
  filter(species != "Epidendrum radicans") %>%
  filter(species != "Epidendrum exasperatum") %>% 
  filter(species != "Elleanthus tonduzii") %>%
  filter(species != "Elleanthus hymenophorus") %>%
  filter(species != "Pleurothallis ruscifolia") %>%
  filter(species != "Maxillaria dendrobioides") %>%
  filter(species != "Elleanthus glaucophyllus") %>%
  filter(species != "Habenaria monorrhiza") %>%
  filter(species != "Epidendrum anoglossum") %>%
  filter(species != "Epidendrum centropetalum") %>%
  arrange(desc(n_especies))
```

```{r calculo_orquiedas_restantes}

# Hacer el calculo de la suma de las orquideas restantes  
cal_orquideas_menores <- apply(orquideas_menores[,2], 2, sum)

```

```{r nueva_dataframe}
# Definir una variable vacía
sum_orquideas_menores <- NULL

# Crear las columnas
sum_orquideas_menores$species <- "Otras"
sum_orquideas_menores$n_especies <- 19313

# Convertirloa a data.frame
sum_orquideas_menores <- data.frame(sum_orquideas_menores, stringsAsFactors = FALSE)
```

```{r convertir_numeric}
# convertit a numerico la columna de n_especies
#sum_orquideas_menores <-
 #sum_orquideas_menores %>%
 #mutate(n_especies = as.numeric(n_especies))
```

```{r unir_dataframe}
# unir los dos data frame
orquideas_unidas <- rbind(orquideas_mayores, sum_orquideas_menores)
```

Registros de presencia
======================================================================

Row {data-height=200}
-----------------------------------------------------------------------

### Cantidad total de registros de presencia {.value-box}
```{r valueBox_orquideas}
valueBox(value = nrow(orquideas),
         caption = "Cantidad total de registros de presencia",
         icon = icono_orquideas,
         color = colores_orquiedas)
```

### Cantidad total de géneros {.value-box}
```{r valueBox_generos}
valueBox(value = nrow(orquideas_generos),
         caption = "Cantidad total de géneros",
         icon = icono_generos,
         color = colores_generos)
```

### Cantidad total de especies {.value-box}
```{r valueBox_especies}
valueBox(value = nrow(orquideas_especies),
         caption = "Cantidad total de especies",
         icon = icono_especies,
         color = colores_especies)
```

Row {data-height=800}
-----------------------------------------------------------------------

### Tabla de registros de presencia 

```{r tabla_registros, message=FALSE, warning=FALSE}
# Tabla de registros de presencia
orquideas %>%
  st_drop_geometry() %>%
  dplyr::select(species, stateProvince, canton, eventDate) %>%
  datatable(
    colnames = c(
      "Especie",
      "Provincia",
      "Canton",
      "Fecha"
    ),
    options = list(searchHighlight = TRUE, language = list(url = '//cdn.datatables.net/plug-ins/1.10.11/i18n/Spanish.json')
    )
  )
```

### Gráfico pastel

```{r grafico_pastel, message=FALSE, warning=FALSE}
#grafico pastel 
grafico_pastel <- 
  plot_ly(
  orquideas_unidas,
  labels = ~ species,
  values= ~ n_especies,
  type = "pie",
  textposition = "inside",
  textinfo = "label+values+percent",
  insidetextorientation = "auto",
  insidetextfont = list(color = "#FFFFFF"),
  marker = list(colors = colors),
  showlegend = FALSE
) %>%
  layout(
    title = "Cantidad de registros para cada especie de orquidea",
    xaxis = list(
      showgrid = FALSE,
      zeroline = FALSE,
      showticklabels = FALSE
    ),
    yaxis = list(
      showgrid = FALSE,
      zeroline = FALSE,
      showticklabels = FALSE
    ) 
  )
  
config (grafico_pastel, locale = "es")
```